import { RouteNameMap } from '@/router/helpers'
import { computed } from 'vue'
import { useRoute } from 'vue-router'

export default function useRouteQuery() {
  // 获取当前路由配置
  const route = useRoute()

  const getRouteQuery = (key: string) => (route.query[key] as string) ?? ''

  // 登录跳转连接, 返回的是一个 ref，在脚本中使用需要加 .value
  const loginRedirectUrl = computed(() => {
    if (route.name === RouteNameMap.get('login')) {
      // x ?? b 表示 x 如果是 undefined 或 null，则取 b，否则取 x
      return getRouteQuery('redirectUrl')
    } else {
      return ''
    }
  })
  const loginRedirectName = computed(() => {
    if (route.name === RouteNameMap.get('login')) {
      return getRouteQuery('redirectName')
    } else {
      return ''
    }
  })
  return {
    loginRedirectUrl,
    loginRedirectName,
  }
}
